home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / elec_eng / eepddsk2.lzh / NETWORKS.BAS < prev    next >
BASIC Source File  |  1987-02-08  |  5KB  |  150 lines

  1. 1 REM "NETWORKS" FROM RF DESIGN, APRIL 85, BY ALAN J. LAPENN. :PRINT
  2. 2 PRINT "THREE ELEMENT MATCHING NETWORKS, AS FOLLOWS:" :PRINT
  3. 3 PRINT "TYPE           TO MATCH      ELEMENT 1     ELEMENT 2     ELEMENT 3" :PRINT
  4. 4 PRINT "1-LOWPASS      RS<=RL        SHUNT C       SERIES L      SHUNT C"
  5. 5 PRINT "2-HIGHPASS     RS<=RL        SHUNT L       SERIES C      SHUNT L"
  6. 6 PRINT "3-LOWPASS      RS<RL        SHUNT L       SERIES L      SHUNT C"
  7. 7 PRINT "4-HIGHPASS     RS<RL        SHUNT C       SERIES C      SHUNT L"
  8. 8 PRINT "5-LOWPASS      RS<=RL        SERIES L      SHUNT C       SERIES L"
  9. 9 PRINT "6-HIGHPASS     RS<=RL        SERIES C      SHUNT L       SERIES C"
  10. 10 PRINT "7-LOWPASS      RS<RL            SERIES L      SHUNT C       SERIES C"
  11. 11 PRINT "8-HIGHPASS     RS<RL            SERIES C      SHUNT L       SERIES L"
  12. 12 PRINT "9-LOWPASS      RS<RL            SERIES C      SERIES L      SHUNT C"
  13. 13 PRINT "10-HIGHPASS    RS<RL            SERIES L      SERIES C      SHUNT L"
  14. 14 PRINT "11-LOWPASS     RS<RL            SERIES L      SHUNT C       SHUNT L"
  15. 15 PRINT "12-HIGHPASS    RS<RL            SERIES C      SHUNT L       SHUNT C"
  16. 16 PRINT "13-LOWPASS     RS<RL            SERIES L      SHUNT C       NONE"
  17. 17 PRINT "14-HIGHPASS    RS<RL            SERIES C      SHUNT L       NONE"   
  18. 18 PRINT
  19. 19 REM MAIN PROGRAM
  20. 20 PRINT "ENTER SOURCE RESISTANCE IN OHMS:"
  21. 30 INPUT RS
  22. 40 PRINT "ENTER LOAD RESISTANCE IN OHMS:"
  23. 50 INPUT RL
  24. 52 IF RS <= RL THEN 60
  25. 54 PRINT "RS MUST BE LESS THAN OR EQUAL TO RL"
  26. 56 GOTO 20
  27. 60 QM = SQR (RL/RS-1)
  28. 70 PRINT "ENTER FREQUENCY IN HERTZ FOR RESULTS IN HENRIES AND FARADS"
  29. 75 PRINT"OR ENTER 0 FOR RESULTS IN REACTANCE VALUES."
  30. 80 INPUT FO
  31. 90 PRINT "ENTER DESIRED NETWORK (1-14):"
  32. 100 INPUT NET
  33. 105 PRINT
  34. 110 PRINT "QMIN="; QM
  35. 112 PRINT
  36. 115 Q = QM
  37. 120 IF NET > 12 THEN 150
  38. 130 PRINT "ENTER DESIRED VALUE OF Q (Q >= QMIN):"
  39. 140 INPUT Q
  40. 142 IF Q >= QM THEN 150
  41. 144 PRINT "Q MUST BE GREATER THAN OR EQUAL TO "; QM
  42. 146 GOTO 130
  43. 150 ON NET GOSUB 400,400,500,500,600,600,700,700,800,800,900,900,1000,1000
  44. 160 IF FO = 0 THEN 300
  45. 170 ON SGN (X1) + 1 GOTO 190,200
  46. 180 F1 = (1/(6.28*FO*X1))*-1
  47. 190 GOTO 210
  48. 200 F1 = X1/(6.28*FO)
  49. 210 ON SGN(X2)+ 1 GOTO 230,240
  50. 220 F2 = (1/(6.28*FO*X2))*-1
  51. 230 GOTO 250
  52. 240 F2 = X2/(6.28*FO)
  53. 250 IF NET > 12 THEN 300
  54. 260 ON SGN (X3) + 1 GOTO 280,290
  55. 270 F3 = (1/(6.28*FO*X3))*-1
  56. 280 GOTO 300
  57. 290 F3 = X3/(6.28*FO)
  58. 300 GOSUB 1200
  59. 305 PRINT
  60. 310 PRINT "ENTER 1 TO RUN PROGRAM AGAIN 0 TO END:"
  61. 320 INPUT D
  62. 330 IF D = 1 THEN 3
  63. 340 END
  64. 400 REM NET1 RS<= RL
  65. 410 X1 = RS*(SQR((RL/RS)/(Q^2 + 1-(RL/RS))))* -1
  66. 420 X2 = (Q*RL-(RS*RL/X1))/(Q^2 + 1)
  67. 430 X3 = (RL/Q)*-1
  68. 440 IF NET = 1 THEN 460
  69. 450 GOSUB 1100
  70. 460 RETURN
  71. 500 REM NET3 RS<RL
  72. 510 X1 = RS/(SQR((RS*(Q^2 + 1))/RL-1))
  73. 520 X2 = ((RL*Q)/(Q^2 + 1)) * (1-(RS/(Q*X1)))
  74. 530 X3 = (RL/Q)*-1
  75. 540 IF NET = 3 THEN 560
  76. 550 GOSUB 1100
  77. 560 RETURN
  78. 600 REM NET5 RS<=RL
  79. 610 X1 = RS*Q
  80. 620 X2 = (RS* (1 + Q^2) * -1)/(Q + SQR((RS* (1 +Q^2))/RL-1))
  81. 630 X3 = RL*SQR((RS* (1 + Q^2))/RL-1)
  82. 640 IF NET = 5 THEN 660
  83. 650 GOSUB 1100
  84. 660 RETURN
  85. 700 REM NET7 RS<RL
  86. 710 X1 = RS*Q
  87. 720 X2 = (RS* (1 + Q^2) *-1)/(Q-SQR((RS*(1 + Q^2))/RL-1))
  88. 730 X3 = RL*SQR((RS* (1 + Q^2))/RL-1) *-1
  89. 740 IF NET = 7 THEN 760
  90. 750 GOSUB 1100
  91. 760 RETURN
  92. 800 REM NET9 RS<RL
  93. 810 X1 = -SQR(RS*RL-RS^2-Q*RS)
  94. 820 X2 = Q*RS
  95. 830 X3 = (RS*RL*-1)/(X1 + X2)
  96. 840 IF NET = 9 THEN 860
  97. 850 GOSUB 1100
  98. 860 RETURN
  99. 900 REM NET11 RS<RL
  100. 910 X1 = RS*SQR(RL/RS-1)
  101. 920 X2 = RL/Q*-1
  102. 930 X3 = X2/(X1/(Q*RS)-1)
  103. 940 IF NET = 11 THEN 960
  104. 950 GOSUB 1100
  105. 960 RETURN
  106. 1000 REM NET13
  107. 1010 X1 = SQR(RS*RL-RS^2)
  108. 1020 X2 = (RS*RL*-1)/X1
  109. 1030 IF NET = 13 THEN 1050
  110. 1040 GOSUB 1100
  111. 1050 RETURN
  112. 1100 REM INVERSE SUBROUTINE
  113. 1110 X1 = X1*-1
  114. 1120 X2 = X2*-1
  115. 1130 IF NET = 14 THEN 1150
  116. 1140 X3 = X3*-1
  117. 1150 RETURN
  118. 1200 REM PRINT ROUTINE
  119. 1204 PRINT
  120. 1206 PRINT
  121. 1210 PRINT "SOURCE RESISTANCE = "; RS; "OHMS"
  122. 1220 PRINT "LOAD RESISTANCE = "; RL; "OHMS"
  123. 1230 PRINT "QMIN = ";QM
  124. 1240 IF QM = Q THEN 1270
  125. 1250 PRINT "Q = ";Q
  126. 1270 PRINT "NETWORK NUMBER";NET
  127. 1280 IF FO <> 0 THEN 1340
  128. 1300 PRINT "X1 = "; X1; "OHMS"
  129. 1310 PRINT "X2 = "; X2; "OHMS"
  130. 1315 IF NET > 12 THEN 1330
  131. 1320 PRINT "X3 = "; X3; "OHMS"
  132. 1324 PRINT
  133. 1326 PRINT "POSITIVE VALUES FOR INDUCTIVE REACTANCE AND NEGATIVE VALUES FOR CAPACITIVE REACTANCE."
  134. 1330 RETURN
  135. 1340 PRINT "FREQUENCY = "; FO; "HERTZ"
  136. 1345 ON SGN (X1) + 1 GOTO 1360,1370
  137. 1350 PRINT "C1 = "; F1; "FARADS"
  138. 1360 GOTO 1380
  139. 1370 PRINT "L1 = "; F1; "HENRIES"
  140. 1380 ON SGN (X2) + 1 GOTO 1400,1410
  141. 1390 PRINT "C2 = "; F2; "FARADS"
  142. 1400 GOTO 1420
  143. 1410 PRINT "L2 = "; F2; "HENRIES"
  144. 1420 IF NET > 12 THEN 1470
  145. 1430 ON SGN (X3) + 1 GOTO 1450,1460
  146. 1440 PRINT "C3 = "; F3; "FARADS"
  147. 1450 GOTO 1470
  148. 1460 PRINT "L3 = "; F3; "HENRIES"
  149. 1470 RETURN
  150.